# pico output module is based on the generic plugin for Speech
# Dispatcher. It means there is no code written explicitly for
# this plugin, all the specifics are handled in this configuration
# and we call a simple command line client to perform the actual
# synthesis. Use this config file with the sd_generic output module.
#
# IMPORTANT: The audio output method relies on an audio playback
# utility (play, aplay, paplay for OSS, ALSA or Pulse)
# being installed. If this is not the case, consider installing it
# or replace the $PLAY_COMMAND string in the GenericExecuteString below
# with play, paplay or similar.
#
# GenericExecuteSynth is the shell command that should be
# executed in order to say some message. This command must
# stop saying the message on SIGKILL, otherwise it's useless.
# You can use the variables $LANGUAGE, $VOICE, $PITCH and $RATE
# which will be substituted for the appropriate value (you
# can modify this value, see other parameters).
# The command can be split into more lines, if necessary, using '\'.
GenericExecuteSynth \
"pico2wave -w $TMPDIR/pico.wav -l $VOICE \'$DATA\' && $PLAY_COMMAND $TMPDIR/pico.wav

# The following three items control punctuation levels None, Some, and All.
# Each of these values will be substituted into the $PUNCT variable depending
# on the value passed to speech dispatcher from applications.
# Note that if an empty string is specified, then $PUNCT will be blank 
# which is a default situation for espeak.
 
GenericPunctNone " "
GenericPunctSome "--punct=\"()[]{};:\""
GenericPunctAll "--punct"

# GenericStripPunctChars is a list (enclosed in doublequotes) of
# all the characters that should be replaced by whitespaces in
# order not to be badly handled by the output module or misinterpreted
# by shell.
# GenericStripPunctChars  ""

# If the language you need to pass in $LANG is different
# from the standard ISO language code, you can specify
# which string to use instead. If you wish to use
# other than ISO charset for the specified language,
# you can add it's name (as accepted by iconv) as a
# third parameter in doublequotes.


GenericLanguage		  "en" "en" "utf-8"
GenericLanguage		  "de" "de" "utf-8"
GenericLanguage		  "es" "es" "utf-8"
GenericLanguage		  "fr" "fr" "utf-8"
GenericLanguage		  "it" "it" "utf-8"

# AddVoice specifies which $VOICE string should be assigned to
# each language and symbolic voice name. All the voices you want
# to use must be specified here. This list will likely not be
# up-to-date, please check pico documentation and add the voices
# you want to use.

AddVoice        "en"    "FEMALE1"	"en-US"
AddVoice        "en"    "FEMALE2"	"en-GB"
AddVoice        "de"    "FEMALE1"	"de-DE"
AddVoice        "es"    "FEMALE1"	"es-ES"
AddVoice        "fr"    "FEMALE1"	"fr-FR"
AddVoice        "it"    "FEMALE1"	"it-IT"

# Yes, it's wrong, but this way you at least get something even when configured
# (by default) to use a male voice
AddVoice        "en"    "MALE1"		"en-US"
AddVoice        "en"    "MALE2"		"en-GB"
AddVoice        "de"    "MALE1"		"de-DE"
AddVoice        "es"    "MALE1"		"es-ES"
AddVoice        "fr"    "MALE1"		"fr-FR"
AddVoice        "it"    "MALE1"		"it-IT"

# Debug turns debugging on or off
# See speechd.conf for information where debugging information is stored
Debug 0
